package com.coolgor.coldot.dto.wechat.oauth2;

import com.coolgor.coldot.entity.wechat.oauth2.OAuth2AccessToken;
import com.coolgor.coldot.enums.wechat.oauth2.OAuth2AccessTokenOperationStateEnum;

import java.util.List;


public class OAuth2AccessTokenExecution {

	// 结果状态 
	private int state;
	// 结果状态标识 
	private String stateInfo;
	// 执行结果的数量 
	private int count;
	// 操作的对象(增删改的时候用到)
	private OAuth2AccessToken oAuth2AccessToken;
	// 获取的结果列表(查询列表的时候使用)
	private List<OAuth2AccessToken> oAuth2AccessTokenList;

	// 构造器
	public OAuth2AccessTokenExecution() {}

	// 操作失败的时候使用的构造器
	public OAuth2AccessTokenExecution(OAuth2AccessTokenOperationStateEnum stateEnum) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
	}

	// 增删改 操作成功的时候使用的构造器
	public OAuth2AccessTokenExecution(OAuth2AccessTokenOperationStateEnum stateEnum, OAuth2AccessToken oAuth2AccessToken) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
		this.oAuth2AccessToken = oAuth2AccessToken;
	}

	// 查询 操作成功的时候使用的构造器
	public OAuth2AccessTokenExecution(OAuth2AccessTokenOperationStateEnum stateEnum, List<OAuth2AccessToken> oAuth2AccessTokenList) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
		this.oAuth2AccessTokenList = oAuth2AccessTokenList;
	}


	// 下面都是getter 和setter

	public int getState() {
		return state;
	}

	public void setState(int state) {
		this.state = state;
	}

	public String getStateInfo() {
		return stateInfo;
	}

	public void setStateInfo(String stateInfo) {
		this.stateInfo = stateInfo;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public OAuth2AccessToken getOAuth2AccessToken() {
		return oAuth2AccessToken;
	}

	public void setOAuth2AccessToken(OAuth2AccessToken oAuth2AccessToken) {
		this.oAuth2AccessToken = oAuth2AccessToken;
	}

	public List<OAuth2AccessToken> getOAuth2AccessTokenList() {
		return oAuth2AccessTokenList;
	}

	public void setOAuth2AccessTokenList(List<OAuth2AccessToken> oAuth2AccessTokenList) {
		this.oAuth2AccessTokenList = oAuth2AccessTokenList;
	}

}